Tra Bui's First Web Page

Welcome Homepage

Hello! I'm Tra Bui and this is my first website!

Linkedin | Email | Facebook | Github | Leetcode | My CV

PROGRAMMING LANGUAGES QUESTIONS (PROFESSOR GISELLE)

1. Why did we move from punch cards to programming languages? What does that tell you about the purpose of programming languages?

Punch cards are means to store digital data in the form of the punched holes on a paper card. In data processing applications, the punch cards are put into a card reader machine, and all of the represented information will be transferred into programming code lines. However, storing and compiling punch cards remain a meticulous job which provides no room for errors. If a single card were put in the wrong order or damaged, it would take weeks to rearrange the stack of cards. Due to this inconvenience, punch cards were getting obsolete, and programming language was a more efficient substitution.

Programming language is a standardized computer language with a set of unique rules, through which a programmer can create software or give commands to machines. The purpose of programming languages is to establish and foster human and machine connections in an effective way.

2. There are hundreds of different programming languages out there. Why do you think we need so many?

Programming languages vary in type because they can be used for different purposes and contexts. For example, C++, HTML, or JavaScript show better advantages for web development, while Python and R can be more fit for analytic purposes that require data processing. Also, because we live in a technology-driven world where any new idea can become obsolete in no time, the programming language is not an exception.

3. What are some drawbacks of a programming language you use? How would you like it to be different? Think of specific examples.

Python is the language I’m currently using. One of the drawbacks of Python is related to data type. For example, the Python string is immutable, so we cannot modify an element in the string itself. While there is some counter measurement to this problem, more word needs to be done because we cannot utilize index in this situation. If Python string can be modified like in C++ or JavaScript, it would be more convenient to the user.

Another problem relates to execution time. Since Python is an interpreted language, it doesn’t need a compiler but translates and executes the code line by line. This mechanism results in a slower time when running code in Python compared to other compiled programming languages.

4. If you were going to create a new programming language, how would you start? What do you need to define?

In order to create a new programming language, few elements need to be taken into consideration, including syntaxes (tokens and grammar), a library, a compiler, and some auxiliary tools.


More article and reference:
https://tomassetti.me/how-to-create-programming-language/
https://www.thecrazyprogrammer.com/2020/03/difference-between-programming-language-and-scripting-language.html
https://techvidvan.com/tutorials/python-advantages-and-disadvantages/
https://www.youtube.com/watch?v=KG2M4ttzBnY&t=168s